package com.zhn;

/**
 *给你一个二叉搜索树的根节点 root ，返回 树中任意两不同节点值之间的最小差值 。
 *
 * 差值是一个正数，其数值等于两值之差的绝对值。
 */


//二叉搜索树是有序的，只需要中序遍历一遍，将问题转化为求数组的差值就可以
public class GetMinimumDifference {
    TreeNode pre;
    int result = Integer.MAX_VALUE;
    public int getMinimumDifference(TreeNode root) {
        travelTree(root);
        return result;
    }
    public void travelTree(TreeNode root){
        if(root == null){
            return;
        }
        travelTree(root.left);
        if(pre!=null){
            result = Math.min(result,root.val-pre.val);
        }
        pre = root;
        travelTree(root.right);
    }
}
